﻿<?php

	//用户登录
	if(!empty($_POST)){// 判断一个变量不为空

		//优化2、在记住我的状态下实现随意输入登录失败
		// 从$_POST中获取提交的变量存储在临时变量中
		$username=$_POST['userName'];
		//如果满足这个条件 说明优化手动输入了正确的密码
		if(!empty($_COOKIE['userName'])&&$_COOKIE['userPassword']==md5($_POST['userPassword']))
		{
			$password=$_COOKIE['userPassword'];
		}
		//如果满足这个条件 说明用户是直接使用记住我的状态下登录的并没有输入密码
		else if(!empty($_COOKIE['userName'])&&$_COOKIE['userPassword']==$_POST['userPassword'])
		{
			$password=$_COOKIE['userPassword'];
		}else if(empty($_COOKIE['userName']))//当清空了COOKIE里的数据时，使用户输入的密码与数据库加密的密码值一致
		{
			$password=md5($_POST['userPassword']);
		}else{
			echo '<script>alert("用户名或密码错误");history.go(-1);</script>';die;
		}

		// 编写查询语句
		// 注意引号`admin`和'$username'，表名和字段名用``,变量名用''。
		// 变量只能作用于当前页面
		$sql="select * from `user` where `userName`='$userName' and `userPassword`='$userPassword'";
		// 执行sql
		$result=mysqli_query($link,$sql); //结果集  表示查询到的结果有很多条记录。只有执行了查询语句才有
		//从查询到的结果集中提取到真实的数据，提取一条数据
		$data=mysqli_fetch_assoc($result);
		//print_r($data);die;


	//判断变量是否为空来提示登录是否成功
	if(!empty($data))
	{
		// 向session存储用户信息
		$_SESSION['user']=$data;//user为存储的下标

		//判断用户是否勾选了记住我
			if(!empty($_POST['check'])){
				//如果如果勾选将用户信息保存在cookie中,保存时间为一天
				setcookie('userName',$userName,time()+3600*24);
				setcookie('userPassword',$userPassword,time()+3600*24);
				//print_r($_COOKIE);
			}else{
				//用户取消记住我则清空用户信息，将值设值为空，有效时间设值为0
				setcookie('userName','',0);
				setcookie('userPassword','',0);
			}

			//判断用户是否勾选了自动登录
			if (!empty($_POST['auto'])) {
				setcookie('auto_login',1,time()+3600*24);//勾选了显示1
			}else{
				setcookie('auto_login',0,0);//未勾选了显示0
			}

			//print_r($_POST);die;
			//echo '<script>alert("登录成功");location.href="index.php"</script>';die;
			header('location:index.php?c=index&a=index&admin=1');//通过使用header函数对页面的头部信息进行设置
		}else{
			echo '<script>alert("用户名或密码错误");history.go(-1);</script>';die;
		}
	}

	//视图加载
	include (VIEW_PATH.$admin.'user/login.html');
 ?>


